package sy.service;

import java.io.Serializable;
import java.util.List;

import sy.model.SysFunction;
import sy.util.Menu;

public interface SysFunctionServiceI {

	/**
	 * 
	 * @Title      : save 
	 * @Description: TODO
	 * @param sysFunction
	 * @return     : Serializable
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月24日 上午11:30:03
	 * @throws
	 */
	Serializable save(SysFunction sysFunction);
	/**
	 * 
	 * @Title      : remove 
	 * @Description: TODO
	 * @param id
	 * @return     : void
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月24日 上午11:31:21
	 * @throws
	 */
	void remove(SysFunction sysFunction);
	/**
	 * 
	 * @Title      : update 
	 * @Description: TODO
	 * @param sysFunction
	 * @return     : void
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月24日 上午11:31:46
	 * @throws
	 */
	void update(SysFunction sysFunction);
	/**
	 * 
	 * @Title      : list 
	 * @Description: TODO
	 * @return     : List<SysFunction>
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月24日 下午2:39:25
	 * @throws
	 */
	List<SysFunction> list();
	/**
	 * 
	 * @Title      : getSysFunctionById 
	 * @Description: TODO
	 * @param id
	 * @return     : SysFunction
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月25日 上午9:59:11
	 * @throws
	 */
	SysFunction getSysFunctionById(String id);
	/**
	 * 
	 * @Title      : listSysFunctionBykey 
	 * @Description: TODO
	 * @param key
	 * @return     : List<SysFunction>
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月25日 上午9:59:14
	 * @throws
	 */
	List<SysFunction> listSysFunctionBykey(String key);
	/**
	 * 
	 * @Title      : listMenuByType 
	 * @Description: TODO
	 * @param type
	 * @return     : List<Menu>
	 * @author     :xieyuanqiu
	 * Create Date : 2017年7月28日 下午6:13:34
	 * @throws
	 */
	List<Menu> listMenuByType(String user, String type, String functionPid);

}
